﻿using System;
using System.Linq;
using System.Text;
using NHibernate.Linq;
using System.Collections.Generic;

namespace PatentApp.Models
{
    public class Pracownik
    {
        public virtual int PracownikId { get; set; }
        public virtual string Imie { get; set; }
        public virtual string Nazwisko { get; set; }
        public virtual string Tytul { get; set; }
        public virtual string Wydzial { get; set; }
        public virtual IList<Produkt> Produkty { get; set; }

        public Pracownik()
        {
            Produkty = new List<Produkt>();
        }
    }
     
    public class SlowoKluczowe
    {
        public virtual int SlowoKluczoweId { get; set; }
        public virtual string Slowo { get; set; }
    }

    public class Access
    {
        public virtual int AccessId { get; set; }
        public virtual string Login { get; set; }
        public virtual string Haslo { get; set; }
        public virtual Pracownik Pracownik { get; set; }
    }

    public class Kategoria
    {
        public virtual int KategoriaId { get; set; }
        public virtual string Nazwa { get; set; }
        public virtual IList<Produkt> Produkty { get; set; }

        public Kategoria()
        {
            Produkty = new List<Produkt>();
        }
    }

    public class Produkt
    {
        public virtual int ProduktId { get; set; }
        public virtual int NrOgolny { get; set; }
        public virtual int NrRoczny { get; set; }
        public virtual string NrZgloszenia { get; set; }
        public virtual string NrPatentu { get; set; }
        public virtual string Tytul { get; set; }
        public virtual string SlowoKluczowe { get; set; }
        public virtual string WlascicielPraw { get; set; }
        public virtual Boolean Platnosc { get; set; }
        public virtual DateTime DataZglTworcy { get; set; }
        public virtual DateTime? DataZgloszenia { get; set; }
        public virtual DateTime? DataOgloZglo { get; set; }
        public virtual DateTime? DataOgloPat { get; set; }
        public virtual Kategoria Kategoria { get; set; }
        public virtual IList<Pracownik> Pracownicy { get; set; }

        public Produkt()
        {
            Pracownicy = new List<Pracownik>();
        }
    }
}
